/**
 * 构建异常体系
 *
 * <pre>
 * {@code ApplicationException} 异常基类
 *      |
 *      └── {@code ResponseCodeException} 支持错误码 {@code ResponseCode}
 *                 |
 *                 ├── {@code FrameworkException} 框架异常
 *                 └── {@code BizException}    业务异常
 * </pre>
 * <p>错误码 {@code ResponseCode}，拥有默认实现 {@code DefaultResponseCode}，框架内可以简单使用</p>
 *
 * <p>业务系统应该创建一个 enum 本地实现 {@code ResponseCode} 接口</p>
 *
 * <p>所有的异常，最终通过 {@code ApplicationExceptionHandler} 进行统一处理</p>
 */
package com.getan.boot.common.exception;